package com.itheima.dao.user;

import com.itheima.pojo.User;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * @author 郭文亮
 * @since 2021/11/4 15:34
 */
/**
 * @author 胡桂明
 * @since 2021/11/5 19:40
 */
public interface UserDao {
    @Select("select * from t_user where username = #{username} and password = #{password}")
    List<User> findUserByUsernameAndPassword(User user);

    /**
     * 新增
     *
     * @param user 传入对象数据
     * @return 返回结果
     */
    boolean save(User user);

    /**
     * 删除
     * @param id 删除条件
     * @return 返回结果
     */
    boolean delete(@Param("id") int id);

    /**
     * 修改
     * @param user 传入对象数据
     * @return 返回结果
     */
    boolean update(User user);

    /**
     * 按ID查找-修改用
     * @param id 查询条件
     * @return 返回查询结果
     */
    User findById(@Param("id") String id);

    /**
     * 查询全部
     * @param value 查询条件
     * @return  返回查询结果
     */
    List<User> findAll(@Param("value") String value);

    @Insert("insert into t_user (username,password) values (#{username},#{password})")
    Integer addUser(User user);
}
